---
title: Setup SSH Tunneling
hide_title: true
sidebar_position: 12
version: 1
---

## SSH Tunneling

1. Turn on feature flag
    - Change [`SSH_TUNNELING`](https://github.com/apache/superset/blob/eb8386e3f0647df6d1bbde8b42073850796cc16f/superset/config.py#L489) to `True`
    - If you want to add more security when establishing the tunnel we allow users to overwrite the `SSHTunnelManager` class [here](https://github.com/apache/superset/blob/eb8386e3f0647df6d1bbde8b42073850796cc16f/superset/config.py#L507)
    - You can also set the [`SSH_TUNNEL_LOCAL_BIND_ADDRESS`](https://github.com/apache/superset/blob/eb8386e3f0647df6d1bbde8b42073850796cc16f/superset/config.py#L508) this the host address where the tunnel will be accessible on your VPC

2. Create database w/ ssh tunnel enabled
    - With the feature flag enabled you should now see ssh tunnel toggle.
    - Click the toggle to enables ssh tunneling and add your credentials accordingly.
        - Superset allows for 2 different type authenticaion (Basic + Private Key). These credentials should come from your service provider.

3. Verify data is flowing
    - Once SSH tunneling has been enabled, go to SQL Lab and write a query to verify data is properly flowing.
